package selenium.other;

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;

import java.util.Set;

/**
 * @Author quan
 * @Description 切换窗口
 * @Date 2023/5/18 11:48
 */
public class Demo5_SwitchWindow {
    public static void main(String[] args) {
        //实现目标：百度中找到新闻按钮，点击后进入该页面；再找到 音乐 按钮并点击到新的页面。
        //1、创建驱动
        WebDriver webDriver = new ChromeDriver();
        //2、打开网页
        webDriver.get("https://www.baidu.com/");
        //3、定位 “新闻” 按钮并点击
        webDriver.findElement(By.cssSelector("#s-top-left > a:nth-child(1)")).click();
        //4、获取到所有窗口的窗口句柄
        Set<String> handles = webDriver.getWindowHandles();
        //5、遍历获取到的所有的窗口句柄，最后一个取到的就是我们获取到的子页面：新闻页面
        String target_handel = "";
        for(String handle : handles){
            target_handel = handle;
        }
        //6、切换到获取到的子页面:新闻页面
        webDriver.switchTo().window(target_handel);
        //7、在新闻页面里找 “音乐” 按钮并点击
        webDriver.findElement(By.cssSelector("#header-link-wrapper > li:nth-child(5) > a")).click();
    }
}
